<?xml version="1.0"?>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops">
  <head>
    <title>SICP</title>
  </head>
  <body>
    <nav id="toc" epub:type="toc">
      <h1>Table of Contents</h1>
      <ol>
        <li>
          <a id="toc-Unofficial-Texinfo-Format" href="html/UTF.xhtml#UTF">Unofficial Texinfo Format</a>
        </li>
        <li>
          <a id="toc-Dedication-1" href="html/Dedication.xhtml#Dedication">Dedication</a>
        </li>
        <li>
          <a id="toc-Foreword-1" href="html/Foreword.xhtml#Foreword">Foreword</a>
        </li>
        <li>
          <a id="toc-Preface-to-the-Second-Edition" href="html/Preface.xhtml#Preface">Preface to the Second Edition</a>
        </li>
        <li>
          <a id="toc-Preface-to-the-First-Edition" href="html/Preface-1e.xhtml#Preface-1e">Preface to the First Edition</a>
        </li>
        <li>
          <a id="toc-Acknowledgments-1" href="html/Acknowledgments.xhtml#Acknowledgments">Acknowledgments</a>
        </li>
        <li>
          <a id="toc-Building-Abstractions-with-Procedures" href="html/Chapter-1.xhtml#Chapter-1">1 Building Abstractions with Procedures</a>
          <ol>
            <li>
              <a id="toc-The-Elements-of-Programming" href="html/1_002e1.xhtml#g_t1_002e1">1.1 The Elements of Programming</a>
              <ol>
                <li>
                  <a id="toc-Expressions" href="html/1_002e1.xhtml#g_t1_002e1_002e1">1.1.1 Expressions</a>
                </li>
                <li>
                  <a id="toc-Naming-and-the-Environment" href="html/1_002e1.xhtml#g_t1_002e1_002e2">1.1.2 Naming and the Environment</a>
                </li>
                <li>
                  <a id="toc-Evaluating-Combinations" href="html/1_002e1.xhtml#g_t1_002e1_002e3">1.1.3 Evaluating Combinations</a>
                </li>
                <li>
                  <a id="toc-Compound-Procedures" href="html/1_002e1.xhtml#g_t1_002e1_002e4">1.1.4 Compound Procedures</a>
                </li>
                <li>
                  <a id="toc-The-Substitution-Model-for-Procedure-Application" href="html/1_002e1.xhtml#g_t1_002e1_002e5">1.1.5 The Substitution Model for Procedure Application</a>
                </li>
                <li>
                  <a id="toc-Conditional-Expressions-and-Predicates" href="html/1_002e1.xhtml#g_t1_002e1_002e6">1.1.6 Conditional Expressions and Predicates</a>
                </li>
                <li>
                  <a id="toc-Example_003a-Square-Roots-by-Newton_0027s-Method" href="html/1_002e1.xhtml#g_t1_002e1_002e7">1.1.7 Example: Square Roots by Newton&#x2019;s Method</a>
                </li>
                <li>
                  <a id="toc-Procedures-as-Black_002dBox-Abstractions" href="html/1_002e1.xhtml#g_t1_002e1_002e8">1.1.8 Procedures as Black-Box Abstractions</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Procedures-and-the-Processes-They-Generate" href="html/1_002e2.xhtml#g_t1_002e2">1.2 Procedures and the Processes They Generate</a>
              <ol>
                <li>
                  <a id="toc-Linear-Recursion-and-Iteration" href="html/1_002e2.xhtml#g_t1_002e2_002e1">1.2.1 Linear Recursion and Iteration</a>
                </li>
                <li>
                  <a id="toc-Tree-Recursion" href="html/1_002e2.xhtml#g_t1_002e2_002e2">1.2.2 Tree Recursion</a>
                </li>
                <li>
                  <a id="toc-Orders-of-Growth" href="html/1_002e2.xhtml#g_t1_002e2_002e3">1.2.3 Orders of Growth</a>
                </li>
                <li>
                  <a id="toc-Exponentiation" href="html/1_002e2.xhtml#g_t1_002e2_002e4">1.2.4 Exponentiation</a>
                </li>
                <li>
                  <a id="toc-Greatest-Common-Divisors" href="html/1_002e2.xhtml#g_t1_002e2_002e5">1.2.5 Greatest Common Divisors</a>
                </li>
                <li>
                  <a id="toc-Example_003a-Testing-for-Primality" href="html/1_002e2.xhtml#g_t1_002e2_002e6">1.2.6 Example: Testing for Primality</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Formulating-Abstractions-with-Higher_002dOrder-Procedures" href="html/1_002e3.xhtml#g_t1_002e3">1.3 Formulating Abstractions with Higher-Order Procedures</a>
              <ol>
                <li>
                  <a id="toc-Procedures-as-Arguments" href="html/1_002e3.xhtml#g_t1_002e3_002e1">1.3.1 Procedures as Arguments</a>
                </li>
                <li>
                  <a id="toc-Constructing-Procedures-Using-Lambda" href="html/1_002e3.xhtml#g_t1_002e3_002e2">1.3.2 Constructing Procedures Using <code>Lambda</code></a>
                </li>
                <li>
                  <a id="toc-Procedures-as-General-Methods" href="html/1_002e3.xhtml#g_t1_002e3_002e3">1.3.3 Procedures as General Methods</a>
                </li>
                <li>
                  <a id="toc-Procedures-as-Returned-Values" href="html/1_002e3.xhtml#g_t1_002e3_002e4">1.3.4 Procedures as Returned Values</a>
                </li>
              </ol>
            </li>
          </ol>
        </li>
        <li>
          <a id="toc-Building-Abstractions-with-Data" href="html/Chapter-2.xhtml#Chapter-2">2 Building Abstractions with Data</a>
          <ol>
            <li>
              <a id="toc-Introduction-to-Data-Abstraction" href="html/2_002e1.xhtml#g_t2_002e1">2.1 Introduction to Data Abstraction</a>
              <ol>
                <li>
                  <a id="toc-Example_003a-Arithmetic-Operations-for-Rational-Numbers" href="html/2_002e1.xhtml#g_t2_002e1_002e1">2.1.1 Example: Arithmetic Operations for Rational Numbers</a>
                </li>
                <li>
                  <a id="toc-Abstraction-Barriers" href="html/2_002e1.xhtml#g_t2_002e1_002e2">2.1.2 Abstraction Barriers</a>
                </li>
                <li>
                  <a id="toc-What-Is-Meant-by-Data_003f" href="html/2_002e1.xhtml#g_t2_002e1_002e3">2.1.3 What Is Meant by Data?</a>
                </li>
                <li>
                  <a id="toc-Extended-Exercise_003a-Interval-Arithmetic" href="html/2_002e1.xhtml#g_t2_002e1_002e4">2.1.4 Extended Exercise: Interval Arithmetic</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Hierarchical-Data-and-the-Closure-Property" href="html/2_002e2.xhtml#g_t2_002e2">2.2 Hierarchical Data and the Closure Property</a>
              <ol>
                <li>
                  <a id="toc-Representing-Sequences" href="html/2_002e2.xhtml#g_t2_002e2_002e1">2.2.1 Representing Sequences</a>
                </li>
                <li>
                  <a id="toc-Hierarchical-Structures" href="html/2_002e2.xhtml#g_t2_002e2_002e2">2.2.2 Hierarchical Structures</a>
                </li>
                <li>
                  <a id="toc-Sequences-as-Conventional-Interfaces" href="html/2_002e2.xhtml#g_t2_002e2_002e3">2.2.3 Sequences as Conventional Interfaces</a>
                </li>
                <li>
                  <a id="toc-Example_003a-A-Picture-Language" href="html/2_002e2.xhtml#g_t2_002e2_002e4">2.2.4 Example: A Picture Language</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Symbolic-Data" href="html/2_002e3.xhtml#g_t2_002e3">2.3 Symbolic Data</a>
              <ol>
                <li>
                  <a id="toc-Quotation" href="html/2_002e3.xhtml#g_t2_002e3_002e1">2.3.1 Quotation</a>
                </li>
                <li>
                  <a id="toc-Example_003a-Symbolic-Differentiation" href="html/2_002e3.xhtml#g_t2_002e3_002e2">2.3.2 Example: Symbolic Differentiation</a>
                </li>
                <li>
                  <a id="toc-Example_003a-Representing-Sets" href="html/2_002e3.xhtml#g_t2_002e3_002e3">2.3.3 Example: Representing Sets</a>
                </li>
                <li>
                  <a id="toc-Example_003a-Huffman-Encoding-Trees" href="html/2_002e3.xhtml#g_t2_002e3_002e4">2.3.4 Example: Huffman Encoding Trees</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Multiple-Representations-for-Abstract-Data" href="html/2_002e4.xhtml#g_t2_002e4">2.4 Multiple Representations for Abstract Data</a>
              <ol>
                <li>
                  <a id="toc-Representations-for-Complex-Numbers" href="html/2_002e4.xhtml#g_t2_002e4_002e1">2.4.1 Representations for Complex Numbers</a>
                </li>
                <li>
                  <a id="toc-Tagged-data" href="html/2_002e4.xhtml#g_t2_002e4_002e2">2.4.2 Tagged data</a>
                </li>
                <li>
                  <a id="toc-Data_002dDirected-Programming-and-Additivity" href="html/2_002e4.xhtml#g_t2_002e4_002e3">2.4.3 Data-Directed Programming and Additivity</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Systems-with-Generic-Operations" href="html/2_002e5.xhtml#g_t2_002e5">2.5 Systems with Generic Operations</a>
              <ol>
                <li>
                  <a id="toc-Generic-Arithmetic-Operations" href="html/2_002e5.xhtml#g_t2_002e5_002e1">2.5.1 Generic Arithmetic Operations</a>
                </li>
                <li>
                  <a id="toc-Combining-Data-of-Different-Types" href="html/2_002e5.xhtml#g_t2_002e5_002e2">2.5.2 Combining Data of Different Types</a>
                </li>
                <li>
                  <a id="toc-Example_003a-Symbolic-Algebra" href="html/2_002e5.xhtml#g_t2_002e5_002e3">2.5.3 Example: Symbolic Algebra</a>
                </li>
              </ol>
            </li>
          </ol>
        </li>
        <li>
          <a id="toc-Modularity_002c-Objects_002c-and-State" href="html/Chapter-3.xhtml#Chapter-3">3 Modularity, Objects, and State</a>
          <ol>
            <li>
              <a id="toc-Assignment-and-Local-State" href="html/3_002e1.xhtml#g_t3_002e1">3.1 Assignment and Local State</a>
              <ol>
                <li>
                  <a id="toc-Local-State-Variables" href="html/3_002e1.xhtml#g_t3_002e1_002e1">3.1.1 Local State Variables</a>
                </li>
                <li>
                  <a id="toc-The-Benefits-of-Introducing-Assignment" href="html/3_002e1.xhtml#g_t3_002e1_002e2">3.1.2 The Benefits of Introducing Assignment</a>
                </li>
                <li>
                  <a id="toc-The-Costs-of-Introducing-Assignment" href="html/3_002e1.xhtml#g_t3_002e1_002e3">3.1.3 The Costs of Introducing Assignment</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-The-Environment-Model-of-Evaluation" href="html/3_002e2.xhtml#g_t3_002e2">3.2 The Environment Model of Evaluation</a>
              <ol>
                <li>
                  <a id="toc-The-Rules-for-Evaluation" href="html/3_002e2.xhtml#g_t3_002e2_002e1">3.2.1 The Rules for Evaluation</a>
                </li>
                <li>
                  <a id="toc-Applying-Simple-Procedures" href="html/3_002e2.xhtml#g_t3_002e2_002e2">3.2.2 Applying Simple Procedures</a>
                </li>
                <li>
                  <a id="toc-Frames-as-the-Repository-of-Local-State" href="html/3_002e2.xhtml#g_t3_002e2_002e3">3.2.3 Frames as the Repository of Local State</a>
                </li>
                <li>
                  <a id="toc-Internal-Definitions" href="html/3_002e2.xhtml#g_t3_002e2_002e4">3.2.4 Internal Definitions</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Modeling-with-Mutable-Data" href="html/3_002e3.xhtml#g_t3_002e3">3.3 Modeling with Mutable Data</a>
              <ol>
                <li>
                  <a id="toc-Mutable-List-Structure" href="html/3_002e3.xhtml#g_t3_002e3_002e1">3.3.1 Mutable List Structure</a>
                </li>
                <li>
                  <a id="toc-Representing-Queues" href="html/3_002e3.xhtml#g_t3_002e3_002e2">3.3.2 Representing Queues</a>
                </li>
                <li>
                  <a id="toc-Representing-Tables" href="html/3_002e3.xhtml#g_t3_002e3_002e3">3.3.3 Representing Tables</a>
                </li>
                <li>
                  <a id="toc-A-Simulator-for-Digital-Circuits" href="html/3_002e3.xhtml#g_t3_002e3_002e4">3.3.4 A Simulator for Digital Circuits</a>
                </li>
                <li>
                  <a id="toc-Propagation-of-Constraints" href="html/3_002e3.xhtml#g_t3_002e3_002e5">3.3.5 Propagation of Constraints</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Concurrency_003a-Time-Is-of-the-Essence" href="html/3_002e4.xhtml#g_t3_002e4">3.4 Concurrency: Time Is of the Essence</a>
              <ol>
                <li>
                  <a id="toc-The-Nature-of-Time-in-Concurrent-Systems" href="html/3_002e4.xhtml#g_t3_002e4_002e1">3.4.1 The Nature of Time in Concurrent Systems</a>
                </li>
                <li>
                  <a id="toc-Mechanisms-for-Controlling-Concurrency" href="html/3_002e4.xhtml#g_t3_002e4_002e2">3.4.2 Mechanisms for Controlling Concurrency</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Streams" href="html/3_002e5.xhtml#g_t3_002e5">3.5 Streams</a>
              <ol>
                <li>
                  <a id="toc-Streams-Are-Delayed-Lists" href="html/3_002e5.xhtml#g_t3_002e5_002e1">3.5.1 Streams Are Delayed Lists</a>
                </li>
                <li>
                  <a id="toc-Infinite-Streams" href="html/3_002e5.xhtml#g_t3_002e5_002e2">3.5.2 Infinite Streams</a>
                </li>
                <li>
                  <a id="toc-Exploiting-the-Stream-Paradigm" href="html/3_002e5.xhtml#g_t3_002e5_002e3">3.5.3 Exploiting the Stream Paradigm</a>
                </li>
                <li>
                  <a id="toc-Streams-and-Delayed-Evaluation" href="html/3_002e5.xhtml#g_t3_002e5_002e4">3.5.4 Streams and Delayed Evaluation</a>
                </li>
                <li>
                  <a id="toc-Modularity-of-Functional-Programs-and-Modularity-of-Objects" href="html/3_002e5.xhtml#g_t3_002e5_002e5">3.5.5 Modularity of Functional Programs and Modularity of Objects</a>
                </li>
              </ol>
            </li>
          </ol>
        </li>
        <li>
          <a id="toc-Metalinguistic-Abstraction" href="html/Chapter-4.xhtml#Chapter-4">4 Metalinguistic Abstraction</a>
          <ol>
            <li>
              <a id="toc-The-Metacircular-Evaluator" href="html/4_002e1.xhtml#g_t4_002e1">4.1 The Metacircular Evaluator</a>
              <ol>
                <li>
                  <a id="toc-The-Core-of-the-Evaluator" href="html/4_002e1.xhtml#g_t4_002e1_002e1">4.1.1 The Core of the Evaluator</a>
                </li>
                <li>
                  <a id="toc-Representing-Expressions" href="html/4_002e1.xhtml#g_t4_002e1_002e2">4.1.2 Representing Expressions</a>
                </li>
                <li>
                  <a id="toc-Evaluator-Data-Structures" href="html/4_002e1.xhtml#g_t4_002e1_002e3">4.1.3 Evaluator Data Structures</a>
                </li>
                <li>
                  <a id="toc-Running-the-Evaluator-as-a-Program" href="html/4_002e1.xhtml#g_t4_002e1_002e4">4.1.4 Running the Evaluator as a Program</a>
                </li>
                <li>
                  <a id="toc-Data-as-Programs" href="html/4_002e1.xhtml#g_t4_002e1_002e5">4.1.5 Data as Programs</a>
                </li>
                <li>
                  <a id="toc-Internal-Definitions-1" href="html/4_002e1.xhtml#g_t4_002e1_002e6">4.1.6 Internal Definitions</a>
                </li>
                <li>
                  <a id="toc-Separating-Syntactic-Analysis-from-Execution" href="html/4_002e1.xhtml#g_t4_002e1_002e7">4.1.7 Separating Syntactic Analysis from Execution</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Variations-on-a-Scheme-_002d_002d_002d-Lazy-Evaluation" href="html/4_002e2.xhtml#g_t4_002e2">4.2 Variations on a Scheme &#x2014; Lazy Evaluation</a>
              <ol>
                <li>
                  <a id="toc-Normal-Order-and-Applicative-Order" href="html/4_002e2.xhtml#g_t4_002e2_002e1">4.2.1 Normal Order and Applicative Order</a>
                </li>
                <li>
                  <a id="toc-An-Interpreter-with-Lazy-Evaluation" href="html/4_002e2.xhtml#g_t4_002e2_002e2">4.2.2 An Interpreter with Lazy Evaluation</a>
                </li>
                <li>
                  <a id="toc-Streams-as-Lazy-Lists" href="html/4_002e2.xhtml#g_t4_002e2_002e3">4.2.3 Streams as Lazy Lists</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Variations-on-a-Scheme-_002d_002d_002d-Nondeterministic-Computing" href="html/4_002e3.xhtml#g_t4_002e3">4.3 Variations on a Scheme &#x2014; Nondeterministic Computing</a>
              <ol>
                <li>
                  <a id="toc-Amb-and-Search" href="html/4_002e3.xhtml#g_t4_002e3_002e1">4.3.1 Amb and Search</a>
                </li>
                <li>
                  <a id="toc-Examples-of-Nondeterministic-Programs" href="html/4_002e3.xhtml#g_t4_002e3_002e2">4.3.2 Examples of Nondeterministic Programs</a>
                </li>
                <li>
                  <a id="toc-Implementing-the-Amb-Evaluator" href="html/4_002e3.xhtml#g_t4_002e3_002e3">4.3.3 Implementing the <code>Amb</code> Evaluator</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Logic-Programming" href="html/4_002e4.xhtml#g_t4_002e4">4.4 Logic Programming</a>
              <ol>
                <li>
                  <a id="toc-Deductive-Information-Retrieval" href="html/4_002e4.xhtml#g_t4_002e4_002e1">4.4.1 Deductive Information Retrieval</a>
                </li>
                <li>
                  <a id="toc-How-the-Query-System-Works" href="html/4_002e4.xhtml#g_t4_002e4_002e2">4.4.2 How the Query System Works</a>
                </li>
                <li>
                  <a id="toc-Is-Logic-Programming-Mathematical-Logic_003f" href="html/4_002e4.xhtml#g_t4_002e4_002e3">4.4.3 Is Logic Programming Mathematical Logic?</a>
                </li>
                <li>
                  <a id="toc-Implementing-the-Query-System" href="html/4_002e4.xhtml#g_t4_002e4_002e4">4.4.4 Implementing the Query System</a>
                  <ol>
                    <li>
                      <a id="toc-The-Driver-Loop-and-Instantiation" href="html/4_002e4.xhtml#g_t4_002e4_002e4_002e1">4.4.4.1 The Driver Loop and Instantiation</a>
                    </li>
                    <li>
                      <a id="toc-The-Evaluator" href="html/4_002e4.xhtml#g_t4_002e4_002e4_002e2">4.4.4.2 The Evaluator</a>
                    </li>
                    <li>
                      <a id="toc-Finding-Assertions-by-Pattern-Matching" href="html/4_002e4.xhtml#g_t4_002e4_002e4_002e3">4.4.4.3 Finding Assertions by Pattern Matching</a>
                    </li>
                    <li>
                      <a id="toc-Rules-and-Unification" href="html/4_002e4.xhtml#g_t4_002e4_002e4_002e4">4.4.4.4 Rules and Unification</a>
                    </li>
                    <li>
                      <a id="toc-Maintaining-the-Data-Base" href="html/4_002e4.xhtml#g_t4_002e4_002e4_002e5">4.4.4.5 Maintaining the Data Base</a>
                    </li>
                    <li>
                      <a id="toc-Stream-Operations" href="html/4_002e4.xhtml#g_t4_002e4_002e4_002e6">4.4.4.6 Stream Operations</a>
                    </li>
                    <li>
                      <a id="toc-Query-Syntax-Procedures" href="html/4_002e4.xhtml#g_t4_002e4_002e4_002e7">4.4.4.7 Query Syntax Procedures</a>
                    </li>
                    <li>
                      <a id="toc-Frames-and-Bindings" href="html/4_002e4.xhtml#g_t4_002e4_002e4_002e8">4.4.4.8 Frames and Bindings</a>
                    </li>
                  </ol>
                </li>
              </ol>
            </li>
          </ol>
        </li>
        <li>
          <a id="toc-Computing-with-Register-Machines" href="html/Chapter-5.xhtml#Chapter-5">5 Computing with Register Machines</a>
          <ol>
            <li>
              <a id="toc-Designing-Register-Machines" href="html/5_002e1.xhtml#g_t5_002e1">5.1 Designing Register Machines</a>
              <ol>
                <li>
                  <a id="toc-A-Language-for-Describing-Register-Machines" href="html/5_002e1.xhtml#g_t5_002e1_002e1">5.1.1 A Language for Describing Register Machines</a>
                </li>
                <li>
                  <a id="toc-Abstraction-in-Machine-Design" href="html/5_002e1.xhtml#g_t5_002e1_002e2">5.1.2 Abstraction in Machine Design</a>
                </li>
                <li>
                  <a id="toc-Subroutines" href="html/5_002e1.xhtml#g_t5_002e1_002e3">5.1.3 Subroutines</a>
                </li>
                <li>
                  <a id="toc-Using-a-Stack-to-Implement-Recursion" href="html/5_002e1.xhtml#g_t5_002e1_002e4">5.1.4 Using a Stack to Implement Recursion</a>
                </li>
                <li>
                  <a id="toc-Instruction-Summary" href="html/5_002e1.xhtml#g_t5_002e1_002e5">5.1.5 Instruction Summary</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-A-Register_002dMachine-Simulator" href="html/5_002e2.xhtml#g_t5_002e2">5.2 A Register-Machine Simulator</a>
              <ol>
                <li>
                  <a id="toc-The-Machine-Model" href="html/5_002e2.xhtml#g_t5_002e2_002e1">5.2.1 The Machine Model</a>
                </li>
                <li>
                  <a id="toc-The-Assembler" href="html/5_002e2.xhtml#g_t5_002e2_002e2">5.2.2 The Assembler</a>
                </li>
                <li>
                  <a id="toc-Generating-Execution-Procedures-for-Instructions" href="html/5_002e2.xhtml#g_t5_002e2_002e3">5.2.3 Generating Execution Procedures for Instructions</a>
                </li>
                <li>
                  <a id="toc-Monitoring-Machine-Performance" href="html/5_002e2.xhtml#g_t5_002e2_002e4">5.2.4 Monitoring Machine Performance</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Storage-Allocation-and-Garbage-Collection" href="html/5_002e3.xhtml#g_t5_002e3">5.3 Storage Allocation and Garbage Collection</a>
              <ol>
                <li>
                  <a id="toc-Memory-as-Vectors" href="html/5_002e3.xhtml#g_t5_002e3_002e1">5.3.1 Memory as Vectors</a>
                </li>
                <li>
                  <a id="toc-Maintaining-the-Illusion-of-Infinite-Memory" href="html/5_002e3.xhtml#g_t5_002e3_002e2">5.3.2 Maintaining the Illusion of Infinite Memory</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-The-Explicit_002dControl-Evaluator" href="html/5_002e4.xhtml#g_t5_002e4">5.4 The Explicit-Control Evaluator</a>
              <ol>
                <li>
                  <a id="toc-The-Core-of-the-Explicit_002dControl-Evaluator" href="html/5_002e4.xhtml#g_t5_002e4_002e1">5.4.1 The Core of the Explicit-Control Evaluator</a>
                </li>
                <li>
                  <a id="toc-Sequence-Evaluation-and-Tail-Recursion" href="html/5_002e4.xhtml#g_t5_002e4_002e2">5.4.2 Sequence Evaluation and Tail Recursion</a>
                </li>
                <li>
                  <a id="toc-Conditionals_002c-Assignments_002c-and-Definitions" href="html/5_002e4.xhtml#g_t5_002e4_002e3">5.4.3 Conditionals, Assignments, and Definitions</a>
                </li>
                <li>
                  <a id="toc-Running-the-Evaluator" href="html/5_002e4.xhtml#g_t5_002e4_002e4">5.4.4 Running the Evaluator</a>
                </li>
              </ol>
            </li>
            <li>
              <a id="toc-Compilation" href="html/5_002e5.xhtml#g_t5_002e5">5.5 Compilation</a>
              <ol>
                <li>
                  <a id="toc-Structure-of-the-Compiler" href="html/5_002e5.xhtml#g_t5_002e5_002e1">5.5.1 Structure of the Compiler</a>
                </li>
                <li>
                  <a id="toc-Compiling-Expressions" href="html/5_002e5.xhtml#g_t5_002e5_002e2">5.5.2 Compiling Expressions</a>
                </li>
                <li>
                  <a id="toc-Compiling-Combinations" href="html/5_002e5.xhtml#g_t5_002e5_002e3">5.5.3 Compiling Combinations</a>
                </li>
                <li>
                  <a id="toc-Combining-Instruction-Sequences" href="html/5_002e5.xhtml#g_t5_002e5_002e4">5.5.4 Combining Instruction Sequences</a>
                </li>
                <li>
                  <a id="toc-An-Example-of-Compiled-Code" href="html/5_002e5.xhtml#g_t5_002e5_002e5">5.5.5 An Example of Compiled Code</a>
                </li>
                <li>
                  <a id="toc-Lexical-Addressing" href="html/5_002e5.xhtml#g_t5_002e5_002e6">5.5.6 Lexical Addressing</a>
                </li>
                <li>
                  <a id="toc-Interfacing-Compiled-Code-to-the-Evaluator" href="html/5_002e5.xhtml#g_t5_002e5_002e7">5.5.7 Interfacing Compiled Code to the Evaluator</a>
                </li>
              </ol>
            </li>
          </ol>
        </li>
        <li>
          <a id="toc-References-1" href="html/References.xhtml#References">References</a>
        </li>
        <li>
          <a id="toc-List-of-Exercises" href="html/Exercises.xhtml#Exercises">List of Exercises</a>
        </li>
        <li>
          <a id="toc-List-of-Figures" href="html/Figures.xhtml#Figures">List of Figures</a>
        </li>
        <li>
          <a id="toc-Term-Index-1" href="html/Term-Index.xhtml#Term-Index">Term Index</a>
        </li>
        <li>
          <a id="toc-Colophon-1" href="html/Colophon.xhtml#Colophon">Colophon</a>
        </li>
      </ol>
    </nav>
  </body>
</html>
